W16 直播檢討


Posted by Christy on 2021-10-10

Q1:老師可以快速講解提點一下 Week 16 的練習題嗎? 謝謝

A1: Robot 是基本 class 的運用;Debounce 有點像是延遲執行,這些題目都很重要喔。

Q2: 16 週的課程都是以 var 為範例,但現在幾乎都使用 letconst,課程這樣設定的用意是什麼呢?感謝老師回答

A2: 因為語法還是都存在,所以都講,無法避免掉會看到 var 的場合。不過如果有規範的話,都用 let, const 比較好

Q3: 還是不是很懂文章中提到:按鈕監聽事件(迴圈那邊)跟閉包有什麼關係?

A3: 跟作用域有關,迴圈跑完以後,i 就是 5,其實跟閉包沒有關係;接下來要怎麼解決這個狀況才跟閉包有關,解決方式就是在宣告一個函式,回傳另一個函式,把值關在函式裡面,這才是閉包的概念。

Q4: 請問老師,有關非同步的像是 promise 這種在 event loop 機制裡面都會是最後才執行的對嗎?(就是會先執行同步的東西並處理完 stack 裡面的東西後才會執行非同步的程式)

A4: 對,24'47" 有詳細解釋。

Q5: 請問當我寫下 let a = 5; var b = 6; b 會可以利用 window.b 來取得,但是 a 不行,不過 a 沒有被其他 block 包覆那不是應該要生存在 window 內嗎? (有點不太懂為什麼不行用 window 取得 a) 謝謝

A5: const, let 不會在 window 上新增一個屬性,規則就是這樣

Just like const the let does not create properties of the window object when declared globally (in the top-most scope).

Description

Q6: var b ,不給予值,印出會是 undefined ,可以想成如果宣告但是沒有給予值的話,系統會 default 給出 undefined 這個值嗎? 把 undefined 想像成一個值?

A6: 可以把 undefined 想像成一個值,undefined 就是沒有定義的值,記得跟 not defined 的差別。

Q7: 第十五週網站前後端開發基礎測試Q9,不太懂「而小明在網站載入成功後打開 console,發現文字的確有被印出來。」這樣這段程式碼會有問題,可以麻煩老師講解嗎~~之前作業自己好像沒用到 window 也想問像 window 這個 web api 有什麼需要多注意或學習的嗎 謝謝老師

A7: 有用到 window,例如 setTimeout();可以用瀏覽器把 window 印出來看看有哪些東西。有興趣的再去研究。

Q9 搞清楚 fn 跟 fn call 的差別。

setTimeout()

Q8: 老師~想問 closure 跟 prototype 大概要熟到什麼程度

A8: closure 學到老師剛剛講的都聽得懂,第十六週練習題裡面的 Debounce 跟 memoize 可以實作出來就 ok;prototype 的話,知道怎麼用它寫出 Robot 物件導向基本的東西並且知道 prototype 的關係。

第十六週練習題

Q9: 老師,如果對SEO有興趣,在開發網站或是目前的學習上老師有什麼建議的!謝謝老師!

A9: 看 SEO 做的不錯的網站的原始碼,參考現成網站去學習比較快。

Q10: 之前老師在回答 final project 的實用性/規模哪一些是比較需要考量 老師有說實用性不太用考量 是因為面試要以用了什麼技術為主去呈現 final project, 還是因為要做出一個真的可用的產品要考量的層面很深(廣)不是我們現在程度能做到的 老師才說不太用考量實用性

A10: 以現在的功力做出來,可能也沒有其他市場上的那麼好用,如果以後沒有要把它當作產品來經營,其實一開始不太需要實用性。把它當作一個 final project 就可以了。

Q11: final project 建議多人還是個人,自己覺得個人的優點是可以自己掌握所有事情,多人的優點是可以有多人協作溝通的經驗,怎麼選擇會對之後面試影響嗎(不知道面試會不會非常重視多人協作的部分或會不會很加分)

A11: 面試確實非常重視多人協作的經驗,可以練習到 git commit, pr 等等;四五個人左右是不錯的人數。

Q12: 工作碰到部署的機會大嗎?

A12: 不一定,看公司,但通常不會是新人。

Q13: 我們部署直接檔案丟FZ 其實是不太好的做法?對實際工作來說

A13: 對喔,基本上如果是真的部署,會是寫一個腳本,讓腳本幫你去做事,不會碰到要部署的機器。

Q14: 如何決定是否鑽研一個技術(或框架)

A14: 覺得有趣或熱門

Q15: 部署這些是不是其實面前端沒什麼加分?

A15: 不一定,看公司。前端可以擁有後端的知識,其實蠻加分的,是一個前後端都會的網頁工程師,有一個更全面性的考量。

Q16: 老師,我的 this 卡卡的,可以先理解成 'this' just refers to what object it's inside of.嗎

A16: 把 this 想成「在呼叫的時候,由一些規則決定它的值」,那只要去學習那些規則,就知道 this 是什麼了。

Q17: 往後學感覺前面又漸漸模糊了,面試前有哪幾週是必啃的嗎?

A17: 可以看 INT101 這堂課跟面試有關,可以看一下。

Q18: 遇到同學(或同業) 有怎樣的狀況或特質老師會覺得不適合當軟體工程師

A18: 工作態度比較重要。

進度落後的話,17, 18 週可以跳過,日後如果要自己寫東西的話,可能會比較慢,或比較不好維護,但還是寫的出來。這兩週對以後未來有幫助,所以可以學習。會一點後端的話,可以自己搞定一切,蠻不錯的。

W16 非常重要,不要跳過,W12, W13 卡很久的話,挑前端的來看就好了,不要一直卡在那邊。

有些 bug 很難除,在文字編輯器裡面看不出來,可以用 16 進位找,有時候是零寬字元或是奇怪的空格。










Related Posts

Vue props 隨筆

Vue props 隨筆

babel, gulp, webpack 簡介

babel, gulp, webpack 簡介

React Next.js and Material UI(MUI)

React Next.js and Material UI(MUI)


Comments